//package com.jijia.webbase.interception.websocket;
//
//import com.jijia.webbase.utils.ThreadLocalUtil;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.http.server.ServerHttpRequest;
//import org.springframework.http.server.ServerHttpResponse;
//import org.springframework.stereotype.Component;
//import org.springframework.web.socket.WebSocketHandler;
//import org.springframework.web.socket.server.HandshakeInterceptor;
//
//import javax.servlet.http.HttpServletResponse;
//import javax.servlet.http.HttpSession;
//import javax.websocket.HandshakeResponse;
//import javax.websocket.server.HandshakeRequest;
//import javax.websocket.server.ServerEndpointConfig;
//import java.util.HashMap;
//import java.util.Map;
//
//@Slf4j
//@Component
//public class WebSocketInterception  extends ServerEndpointConfig.Configurator {
//    @Override
//    public boolean checkOrigin(String originHeaderValue) {
//        log.debug("originHeaderValue={}",originHeaderValue);
//        // 检查来源
//        return true; // 允许所有源，或者根据需要进行限制
//    }
//
//    @Override
//    public void modifyHandshake(ServerEndpointConfig sec, HandshakeRequest request, HandshakeResponse response) {
//        // 在这里执行token验证
//        log.debug("websocket被拦截了！");
//        Boolean validToken = (Boolean) ThreadLocalUtil.get().get("validationTokenStatus");
//        if (!validToken){
//            throw new RuntimeException("websocket拦截器中，token验证失败！");
//        }
//        log.debug("连接websocket，验证token成功！开始连接！");
//        //调用父类方法完成握手过程
//        super.modifyHandshake(sec, request, response);
//    }
//
//}
